// React Router路由匹配hook
import { useMatches } from "react-router-dom"

/**
 * 按钮权限控制Hook
 * 根据当前路由的权限配置判断用户是否有特定按钮的操作权限
 * 
 * @param type 按钮类型（如：'add', 'edit', 'del'）
 * @returns boolean 是否有该按钮的操作权限
 */
function useBtns(type: string): boolean {
    // 获取当前路由匹配信息
    const match = useMatches()
    console.log('当前路由匹配信息:', match)
    
    // 从路由数据中获取按钮权限配置
    const { btns } = match[1].data
    
    // 检查当前按钮类型是否在权限列表中
    return btns.includes(type)
}

// 导出按钮权限Hook
export default useBtns
